using System.Collections;
using System.Collections.Generic;
using Sirenix.OdinInspector;
using UnityEngine;

namespace LFromeWork
{
    [CreateAssetMenu(menuName = "LAsset/ParamsSettings")]

    public class ParamsSettings : ScriptableObject
    {
        #region 系统参数相关
        
        /// <summary>
        /// 类对象池_释放间隔
        /// </summary>
        [BoxGroup("系统参数")]
        [LabelText("类对象池_释放间隔")]
        public int PoolReleaseClassObjectInterval = 30;
        
        /// <summary>
        /// AssetBundle池_释放间隔
        /// </summary>
        [BoxGroup("系统参数")] [LabelText("AssetBundle_释放间隔")]
        public int PoolReleaseAssetBundleInterval = 30;

        /// <summary>
        /// AssetBundle池_释放间隔
        /// </summary>
        [BoxGroup("系统参数")] [LabelText("Asset_释放间隔")]
        public int PoolReleaseAssetInterval = 30;
        
        /// <summary>
        /// 下载请求的重试次数
        /// </summary>
        [BoxGroup("系统参数")]
        [LabelText("下载请求的重试次数")]
        public int DownloadRetry = 3;
        
        /// <summary>
        /// 下载多文件器的数量
        /// </summary>
        [BoxGroup("系统参数")]
        [LabelText("下载多文件器的数量")]
        public int DownloadRoutineCount = 3;
        /// <summary>
        /// 断点续传的存储间隔缓存
        /// </summary>
        [BoxGroup("系统参数")]
        [LabelText("断点续传的存储间隔缓存")]
        public int DownloadFlushSize = 2048;

        #endregion

        #region Http请求相关
        [BoxGroup("Http请求相关")]
        [LabelText("正式服请求路径")]
        public string WebAccountUrl;

        [BoxGroup("Http请求相关")]
        [LabelText("测试服请求路径")]
        public string TestWebAccountUrl;

        [BoxGroup("Http请求相关")]
        [LabelText("当前是否测试服")]
        public bool IsTest;

        [BoxGroup("Http请求相关")]
        [LabelText("是否加密")]
        public bool PostIsEncrypt;

        [BoxGroup("Http请求相关")]
        [LabelText("设置Post的ContentType")]
        public string PostContentType;

        /// <summary>
        /// Http请求的重试间隔
        /// </summary>
        [BoxGroup("Http请求相关")]
        [LabelText("Http请求的重试间隔")]
        public int HttpRetryInterval = 3;

        /// <summary>
        /// Http请求的重试次数
        /// </summary>
        [BoxGroup("Http请求相关")]
        [LabelText("Http请求的重试次数")]
        public int HttpRetry = 3;
        #endregion
        
        #region CDN参数相关
        /// <summary>
        /// AssetBundle池_释放间隔
        /// </summary>
        [BoxGroup("CDN参数")] [LabelText("CDNUrl")]
        public string CDNUrl = "http://127.0.0.1:8090/";
        #endregion

    }
}
